#COMPILE EXE "WAF-GUI.exe" #DIM ALL #INCLUDE ONCE "Windows.inc" #INCLUDE ONCE "CommCtrl.inc" #INCLUDE ONCE "RTF.inc" #RESOURCE ICON, AICO, "res\inu.ico" #RESOURCE BITMAP, NWF, "res\newfile.bmp" #RESOURCE BITMAP, OPN, "res\openfile.bmp" #RESOURCE BITMAP, SAV, "res\savefile.bmp" #RESOURCE BITMAP, EDI, "res\edit.bmp" #RESOURCE BITMAP, RUN, "res\run.bmp" #RESOURCE BITMAP, LNG, "res\lang.bmp" #RESOURCE BITMAP, HLP, "res\hlp.bmp" #RESOURCE BITMAP, MORE, "res\more.bmp" #RESOURCE BITMAP, CMD1, "res\devices.bmp" #RESOURCE BITMAP, CMD2, "res\help.bmp" #RESOURCE BITMAP, CMD3, "res\version.bmp" #RESOURCE BITMAP, CMD4, "res\changelog.bmp" #RESOURCE BITMAP, CMD5, "res\logcat.bmp" #RESOURCE BITMAP, CMD6, "res\install.bmp" #RESOURCE BITMAP, CMD7, "res\listapps.bmp" #RESOURCE BITMAP, CMD8, "res\uninstall.bmp" #RESOURCE BITMAP, CMD9, "res\launch.bmp" #RESOURCE BITMAP, CMD10, "res\pull.bmp" #RESOURCE BITMAP, CMD11, "res\push.bmp" #RESOURCE BITMAP, CMD12, "res\start-server.bmp" #RESOURCE BITMAP, CMD13, "res\kill-server.bmp" #RESOURCE BITMAP, CMD14, "res\shell.bmp" #RESOURCE BITMAP, CMD15, "res\popup.bmp" #RESOURCE BITMAP, CMD16, "res\vibrate.bmp" #RESOURCE BITMAP, CMD17, "res\browse.bmp" #RESOURCE BITMAP, BTEN, "res\button_add.bmp" #RESOURCE BITMAP, BTFR, "res\button_ajouter.bmp" '------------------------------------------------------------------------------ ' ** Constants ** '------------------------------------------------------------------------------ %IDC_LNG_ICON = 1001 %IDC_CMD_ICON = 1002 %IDC_CMD_LABEL = 1003 %IDC_COMBOBOX = 1004 %IDC_LABEL1 = 1005 %IDC_PARAM1_TXTBOX = 1006 %IDC_PARAM1_LABEL = 1007 %IDC_PARAM1_DESC = 1008 %IDC_PARAM2_TXTBOX = 1009 %IDC_PARAM2_LABEL = 1010 %IDC_PARAM2_DESC = 1011 %IDC_PARAM1_MORE = 1012 %IDC_PARAM2_MORE = 1013 %IDC_ADD_IMGBUTTON = 1014 %IDC_LINE1 = 1015 %IDC_LINE2 = 1016 %IDC_RICHEDIT = 1017 %IDC_TOOLBAR = 1018 %TTB_NEW = 1100 %TTB_OPEN = 1101 %TTB_SAVE = 1102 %TTB_EDIT = 1103 %TTB_RUN = 1104 %TTB_LANG = 1105 %TTB_HELP = 1106 '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ ' ** Global variables ** '------------------------------------------------------------------------------ GLOBAL LNG AS BYTE GLOBAL hLanguage AS DWORD GLOBAL hToolbar AS DWORD GLOBAL cmd() AS STRING ' list of commands GLOBAL pe1() AS STRING ' parameter english 1 GLOBAL pe2() AS STRING ' parameter english 2 GLOBAL pf1() AS STRING ' parameter french 1 GLOBAL pf2() AS STRING ' parameter french 2 GLOBAL APPDATA AS STRING '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ ' ** Main Application Entry Point ** '------------------------------------------------------------------------------ FUNCTION PBMAIN() LoadLibrary("riched32.dll") DIM cmd (1 TO 17) ARRAY ASSIGN cmd() = "devices", "help", "version", "changelog", "logcat", "install", _ "listapps", "uninstall", "launch", "pull", "push", "start-server", _ "kill-server", "shell", "popup", "vibrate", "browse" DIM pe1 (LBOUND(cmd) TO UBOUND(cmd)) DIM pe2 (LBOUND(cmd) TO UBOUND(cmd)) DIM pf1 (LBOUND(cmd) TO UBOUND(cmd)) DIM pf2 (LBOUND(cmd) TO UBOUND(cmd)) ARRAY ASSIGN pe1() = "", _ 'devices "", _ ' help "", _ ' version "", _ ' changelog "", _ ' logcat "path + name of local .apk file", _ ' install "", _ ' listapps "name of installed app package", _ ' uninstall "name of app package + main activity", _ ' launch "path + name of existing remote file", _ ' pull "path + name of existing local file", _ ' push "", _ ' start-server "", _ ' kill-server "linux command to be executed", _ ' shell "text to be displayed", _ ' popup "morse code in the form of . (dot) _ (dash) and spaces (pause)", _ ' vibrate "http url, or path + name of existing remote file" ' browse ARRAY ASSIGN pe2() = "", _ 'devices "", _ ' help "", _ ' version "", _ ' changelog "", _ ' logcat "", _ ' install "", _ ' listapps "", _ ' uninstall "", _ ' launch "[optional] path + name of local file to create", _ ' pull "path + name of remote file to create", _ ' push "", _ ' start-server "", _ ' kill-server "", _ ' shell "", _ ' popup "", _ ' vibrate "" ' browse ARRAY ASSIGN pf1() = "", _ 'devices "", _ ' help "", _ ' version "", _ ' changelog "", _ ' logcat "chemin + nom d'un fichier .apk local", _ ' install "", _ ' listapps "nom de package d'une appli installée", _ ' uninstall "nom de package d'appli + son activity principale", _ ' launch "chemin + nom d'un fichier distant existant", _ ' pull "chemin + nom d'un fichier local existant", _ ' push "", _ ' start-server "", _ ' kill-server "commande linux à exécuter", _ ' shell "texte à afficher", _ ' popup "code morse sous la forme de . (point) _ (tiret) et espaces (pause)", _ ' vibrate "url http, ou chemin + nom d'un fichier distant existant" ' browse ARRAY ASSIGN pf2() = "", _ 'devices "", _ ' help "", _ ' version "", _ ' changelog "", _ ' logcat "", _ ' install "", _ ' listapps "", _ ' uninstall "", _ ' launch "[facultatif] chemin + nom du fichier local à créer", _ ' pull "chemin + nom du fichier distant à créer", _ ' push "", _ ' start-server "", _ ' kill-server "", _ ' shell "", _ ' popup "", _ ' vibrate "" ' browse APPDATA = CreateLocalAppdataFolder() + "\" LoadConfig() MENU NEW POPUP TO hLanguage MENU ADD STRING, hLanguage, "English", 1, %MF_ENABLED MENU ADD STRING, hLanguage, "Français", 2, %MF_ENABLED MENU SET STATE hLanguage, LNG, %MF_CHECKED ShowMainDlg %HWND_DESKTOP END FUNCTION '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ %CSIDL_LOCAL_APPDATA = &H001c ' \Local Settings\Application Data (non roaming) DECLARE FUNCTION SHGetFolderPath LIB "Shell32.dll" _ ALIAS "SHGetFolderPathA" (BYVAL hwnd AS DWORD, BYVAL csidl AS LONG, _ BYVAL hToken AS DWORD, BYVAL dwFlags AS DWORD, pszPath AS ASCIIZ) AS LONG '------------------------------------------------------------------------------ FUNCTION CreateLocalAppdataFolder AS STRING LOCAL szBaseFolder AS ASCIIZ * %MAX_PATH LOCAL folder AS STRING ShGetFolderPath (BYVAL %NULL, _ ' hWnd, "typically null" %CSIDL_LOCAL_APPDATA, _ ' (supported) CSIDL value BYVAL %NULL, _ ' hToken for security, null = Default BYVAL 0, _ ' above szBaseFolder) folder = TRIM$(szBaseFolder) + "\" + EXE.NAME$ MKDIR folder FUNCTION = folder END FUNCTION '------------------------------------------------------------------------------ '----------------------------------------------------------------------------------------------------- MACRO INIFILE = APPDATA + EXE.NAME$ + ".ini" '----------------------------------------------------------------------------------------------------- SUB LoadConfig() LOCAL a AS ASCIIZ * %MAX_PATH GetPrivateProfileString "Config", "language", "1", a, %MAX_PATH, INIFILE LNG = VAL(a) IF LNG <> 1 AND LNG <> 2 THEN LNG = 1 END SUB '----------------------------------------------------------------------------------------------------- '------------------------------------------------------------------------------ MACRO CHANGE_LANGUAGE WritePrivateProfileString "Config", "language", TRIM$(LNG), INIFILE CONTROL SET TEXT CB.HNDL, %IDC_LABEL1, IIF$(LNG=1, "Add a command:", "Ajoutez une commande :") CONTROL SET TEXT CB.HNDL, %IDC_PARAM1_LABEL, IIF$(LNG=1, "Parameter 1:", "Paramètre 1 :") CONTROL SET TEXT CB.HNDL, %IDC_PARAM2_LABEL, IIF$(LNG=1, "Parameter 2:", "Paramètre 2 :") CONTROL SET IMGBUTTON CB.HNDL, %IDC_ADD_IMGBUTTON, IIF$(LNG=1, "BTEN", "BTFR") COMBOBOX GET SELECT CB.HNDL, %IDC_COMBOBOX TO lRes DISPLAY_CMD_PARAMS END MACRO '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ MACRO DISPLAY_CMD_PARAMS CONTROL SET TEXT CB.HNDL, %IDC_PARAM1_TXTBOX, "" CONTROL SET TEXT CB.HNDL, %IDC_PARAM2_TXTBOX, "" IF LNG = 1 THEN ' English IF pe1(lRes) = "" THEN CONTROL SET TEXT CB.HNDL, %IDC_PARAM1_DESC, "none" CONTROL DISABLE CB.HNDL, %IDC_PARAM1_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM1_MORE, %SW_HIDE CONTROL DISABLE CB.HNDL, %IDC_PARAM1_DESC ELSE CONTROL SET TEXT CB.HNDL, %IDC_PARAM1_DESC, pe1(lRes) CONTROL ENABLE CB.HNDL, %IDC_PARAM1_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM1_MORE, %SW_SHOW CONTROL ENABLE CB.HNDL, %IDC_PARAM1_DESC CONTROL SET FOCUS CB.HNDL, %IDC_PARAM1_TXTBOX END IF IF pe2(lRes) = "" THEN CONTROL SET TEXT CB.HNDL, %IDC_PARAM2_DESC, "none" CONTROL DISABLE CB.HNDL, %IDC_PARAM2_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM2_MORE, %SW_HIDE CONTROL DISABLE CB.HNDL, %IDC_PARAM2_DESC ELSE CONTROL SET TEXT CB.HNDL, %IDC_PARAM2_DESC, pe2(lRes) CONTROL ENABLE CB.HNDL, %IDC_PARAM2_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM2_MORE, %SW_SHOW CONTROL ENABLE CB.HNDL, %IDC_PARAM2_DESC END IF ELSE ' Français IF pf1(lRes) = "" THEN CONTROL SET TEXT CB.HNDL, %IDC_PARAM1_DESC, "aucun" CONTROL DISABLE CB.HNDL, %IDC_PARAM1_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM1_MORE, %SW_HIDE CONTROL DISABLE CB.HNDL, %IDC_PARAM1_DESC ELSE CONTROL SET TEXT CB.HNDL, %IDC_PARAM1_DESC, pf1(lRes) CONTROL ENABLE CB.HNDL, %IDC_PARAM1_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM1_MORE, %SW_SHOW CONTROL ENABLE CB.HNDL, %IDC_PARAM1_DESC CONTROL SET FOCUS CB.HNDL, %IDC_PARAM1_TXTBOX END IF IF pf2(lRes) = "" THEN CONTROL SET TEXT CB.HNDL, %IDC_PARAM2_DESC, "aucun" CONTROL DISABLE CB.HNDL, %IDC_PARAM2_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM2_MORE, %SW_HIDE CONTROL DISABLE CB.HNDL, %IDC_PARAM2_DESC ELSE CONTROL SET TEXT CB.HNDL, %IDC_PARAM2_DESC, pf2(lRes) CONTROL ENABLE CB.HNDL, %IDC_PARAM2_TXTBOX CONTROL SHOW STATE CB.HNDL, %IDC_PARAM2_MORE, %SW_SHOW CONTROL ENABLE CB.HNDL, %IDC_PARAM2_DESC END IF END IF END MACRO '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ ' ** CallBacks ** '------------------------------------------------------------------------------ CALLBACK FUNCTION ProcMainDlg() LOCAL lRes AS LONG LOCAL e AS STRING SELECT CASE AS LONG CB.MSG CASE %WM_INITDIALOG ' Initialization handler COMBOBOX SELECT CB.HNDL, %IDC_COMBOBOX, 1 lRes = 1 DISPLAY_CMD_PARAMS CHANGE_LANGUAGE CASE %WM_SETCURSOR ' Change cursor to link-hand when hovering over links SELECT CASE GetDlgCtrlId(CB.WPARAM) CASE %IDC_PARAM1_MORE, %IDC_PARAM2_MORE, %IDC_LNG_ICON SetCursor LoadCursor(%NULL, BYVAL %IDC_HAND) SetWindowLong CB.HNDL, %dwl_msgresult, 1 FUNCTION = 1 CASE %IDC_CMD_ICON, %IDC_CMD_LABEL SetCursor LoadCursor(%NULL, BYVAL %IDC_HELP) SetWindowLong CB.HNDL, %dwl_msgresult, 1 FUNCTION = 1 END SELECT CASE %WM_NOTIFY SELECT CASE CB.NMCODE CASE %TTN_GetDispInfo ' Set tooltip on toolbars LOCAL PTT AS TooltipText PTR PTT = CB.LPARAM @PTT.@lpszText = SetToolTips(CB.NMID) CASE %TBN_DROPDOWN ' Language popup menu LOCAL pt AS POINTAPI LOCAL hWnd AS LONG GetCursorPos pt hWnd = WindowFromPoint(pt) lRes = TrackPopupMenuEx(hLanguage, %TPM_LEFTALIGN OR %TPM_RIGHTBUTTON OR %TPM_RETURNCMD, pt.X, pt.Y, hWnd, BYVAL 0&) IF lRes <> 0 AND lRes <> LNG THEN MENU SET STATE hLanguage, LNG, %MF_UNCHECKED LNG = lRes MENU SET STATE hLanguage, LNG, %MF_CHECKED CHANGE_LANGUAGE END IF END SELECT CASE %WM_COMMAND ' Process control notifications SELECT CASE AS LONG CB.CTL CASE %IDC_COMBOBOX IF CB.CTLMSG = %CBN_SELENDOK THEN COMBOBOX GET SELECT CB.HNDL, CB.CTL TO lRes COMBOBOX GET TEXT CB.HNDL, CB.CTL TO e CONTROL SET TEXT CB.HNDL, %IDC_CMD_LABEL, e GRAPHIC ATTACH CB.HNDL, %IDC_CMD_ICON GRAPHIC CLEAR GRAPHIC RENDER BITMAP "CMD" + TRIM$(lRes), (0, 0) - (64, 64) GRAPHIC ATTACH CB.HNDL, %IDC_LNG_ICON GRAPHIC RENDER BITMAP "LNG", (0, 0) - (24, 24) DISPLAY_CMD_PARAMS END IF CASE %IDC_CMD_ICON, %IDC_CMD_LABEL IF CB.CTLMSG = %STN_CLICKED THEN ?"help",,"wafgui" END IF CASE %IDC_PARAM1_TXTBOX CASE %IDC_PARAM2_TXTBOX CASE %IDC_ADD_IMGBUTTON IF CB.CTLMSG = %BN_CLICKED OR CB.CTLMSG = 1 THEN END IF CASE %IDC_RICHEDIT END SELECT END SELECT END FUNCTION '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ FUNCTION SetToolTips(cID AS LONG) AS STRING SELECT CASE cID CASE %TTB_NEW : FUNCTION = IIF$(LNG=1, "New script", "Nouveau script") CASE %TTB_OPEN : FUNCTION = IIF$(LNG=1, "Open script", "Ouvrir script") CASE %TTB_SAVE : FUNCTION = IIF$(LNG=1, "Save script", "Sauver script") CASE %TTB_EDIT : FUNCTION = IIF$(LNG=1, "Edit mode", "Mode édition") CASE %TTB_RUN : FUNCTION = IIF$(LNG=1, "Run mode", "Mode exécution") CASE %TTB_LANG : FUNCTION = IIF$(LNG=1, "Change language", "Changer la langue") CASE %TTB_HELP : FUNCTION = IIF$(LNG=1, "Help", "Aide") END SELECT END FUNCTION '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ FUNCTION StrReplace(mainstring AS STRING, look4 AS STRING, replacement AS STRING) AS STRING LOCAL e AS STRING e = mainstring REPLACE look4 WITH replacement IN e FUNCTION = e END FUNCTION '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ ' ** Dialogs ** '------------------------------------------------------------------------------ FUNCTION ShowMainDlg(BYVAL hParent AS DWORD) AS LONG LOCAL lRslt AS LONG LOCAL hDlg AS DWORD LOCAL hFont1 AS DWORD LOCAL hFont2 AS DWORD LOCAL hFont3 AS DWORD LOCAL hImageList AS DWORD LOCAL hIcon AS DWORD LOCAL th AS LONG ' toolbar height LOCAL rt AS STRING DIALOG NEW PIXELS, hParent, "WAF-GUI", , , 512, 430, _ %DS_MODALFRAME OR %WS_CAPTION OR %WS_POPUP OR %WS_SYSMENU OR %WS_MINIMIZEBOX, TO hDlg DIALOG SET COLOR hDlg, %BLACK, %WHITE IMAGELIST NEW BITMAP 32,32,24,7 TO hImageList IMAGELIST ADD BITMAP hImageList, "NWF" IMAGELIST ADD BITMAP hImageList, "OPN" IMAGELIST ADD BITMAP hImageList, "SAV" IMAGELIST ADD BITMAP hImageList, "EDI" IMAGELIST ADD BITMAP hImageList, "RUN" IMAGELIST ADD BITMAP hImageList, "LNG" IMAGELIST ADD BITMAP hImageList, "HLP" CONTROL ADD TOOLBAR, hDlg, %IDC_TOOLBAR, "",0,0,0,0, %TBSTYLE_TOOLTIPS OR %TBSTYLE_FLAT TOOLBAR SET IMAGELIST hDlg, %IDC_TOOLBAR, hImageList, 0 TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 1, %TTB_NEW, %BTNS_BUTTON, "" ' new TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 2, %TTB_OPEN, %BTNS_BUTTON, "" ' open TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 3, %TTB_SAVE, %BTNS_BUTTON, "" ' save TOOLBAR ADD SEPARATOR hDlg, %IDC_TOOLBAR, 50 TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 4, %TTB_EDIT, %BTNS_BUTTON OR %BTNS_CHECKGROUP, "" ' edit TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 5, %TTB_RUN, %BTNS_BUTTON OR %BTNS_CHECKGROUP, "" ' run TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 0, 9999, 0, "" TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 0, 9998, 0, "" TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 0, 9997, 0, "" TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 0, 9996, 0, "" TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 6, %TTB_LANG, %BTNS_DROPDOWN, "" ' language TOOLBAR ADD BUTTON hDlg, %IDC_TOOLBAR, 7, %TTB_HELP, %BTNS_BUTTON, "" ' help CONTROL GET SIZE hDlg, %IDC_TOOLBAR TO lRslt, th TOOLBAR SET STATE hDlg, %IDC_TOOLBAR, BYCMD 9999, %TBSTATE_DISABLED TOOLBAR SET STATE hDlg, %IDC_TOOLBAR, BYCMD 9998, %TBSTATE_DISABLED TOOLBAR SET STATE hDlg, %IDC_TOOLBAR, BYCMD 9997, %TBSTATE_DISABLED TOOLBAR SET STATE hDlg, %IDC_TOOLBAR, BYCMD 9996, %TBSTATE_DISABLED TOOLBAR SET STATE hDlg, %IDC_TOOLBAR, BYCMD %TTB_EDIT, %TBSTATE_ENABLED OR %TBSTATE_CHECKED ' edit CONTROL HANDLE hDlg, %IDC_TOOLBAR TO hToolbar CONTROL ADD COMBOBOX, hDlg, %IDC_COMBOBOX, cmd(), 8, th+35, 184, 24*UBOUND(cmd), %CBS_DROPDOWNLIST OR %WS_TABSTOP CONTROL SET COLOR hDlg, %IDC_COMBOBOX, %BLACK, %WHITE CONTROL ADD LABEL, hDlg, %IDC_LABEL1, "Add a command:", 8, th+11, 184, 24 CONTROL SET COLOR hDlg, %IDC_LABEL1, -1, %WHITE CONTROL ADD GRAPHIC, hDlg, %IDC_CMD_ICON, "", 200, th+8, 65, 65, %SS_NOTIFY GRAPHIC ATTACH hDlg, %IDC_CMD_ICON GRAPHIC RENDER BITMAP "CMD1", (0, 0) - (64, 64) CONTROL ADD LABEL, hDlg, %IDC_CMD_LABEL, cmd(1), 272, th+16, 230, 56, %SS_NOTIFY CONTROL SET COLOR hDlg, %IDC_CMD_LABEL, RGB(242, 107, 195), %WHITE CONTROL ADD LABEL, hDlg, %IDC_PARAM1_LABEL, "Parameter 1:", 8, th+72, 96, 24 CONTROL SET COLOR hDlg, %IDC_PARAM1_LABEL, -1, %WHITE CONTROL ADD LABEL, hDlg, %IDC_PARAM1_DESC, "Bla bla", 104, th+72, 376, 24 CONTROL SET COLOR hDlg, %IDC_PARAM1_DESC, -1, %WHITE CONTROL ADD GRAPHIC, hDlg, %IDC_PARAM1_MORE, "", 480, th+72, 26, 24, %SS_NOTIFY GRAPHIC ATTACH hDlg, %IDC_PARAM1_MORE GRAPHIC RENDER BITMAP "MORE", (0, 0) - (25, 23) CONTROL ADD TEXTBOX, hDlg, %IDC_PARAM1_TXTBOX, "", 8, th+96, 496, 24 CONTROL ADD LABEL, hDlg, %IDC_PARAM2_LABEL, "Parameter 2:", 8, th+128, 96, 24 CONTROL SET COLOR hDlg, %IDC_PARAM2_LABEL, -1, %WHITE CONTROL ADD LABEL, hDlg, %IDC_PARAM2_DESC, "Bla bla", 104, th+128, 376, 24 CONTROL SET COLOR hDlg, %IDC_PARAM2_DESC, -1, %WHITE CONTROL ADD GRAPHIC, hDlg, %IDC_PARAM2_MORE, "", 480, th+128, 26, 24, %SS_NOTIFY GRAPHIC ATTACH hDlg, %IDC_PARAM2_MORE GRAPHIC RENDER BITMAP "MORE", (0, 0) - (25, 23) CONTROL ADD TEXTBOX, hDlg, %IDC_PARAM2_TXTBOX, "", 8, th+152, 496, 24 CONTROL ADD LINE, hDlg, %IDC_LINE1, "", 8, th+208, 190, 1 CONTROL ADD LINE, hDlg, %IDC_LINE2, "", 318, th+208, 190, 1 CONTROL ADD IMGBUTTON, hDlg, %IDC_ADD_IMGBUTTON, "BTEN", 207, th+191, 102, 34 CONTROL ADD "richedit", hDlg, %IDC_RICHEDIT, "", 8, th+240, 496, 134, _ %WS_CHILD OR %WS_VISIBLE OR %ES_MULTILINE OR %WS_VSCROLL OR %WS_BORDER rt = "[font:o,10][b][red]push [green]C:\subfolder\myfile.ext [blue]/sdcard/Download/myfile.ext[/b][eol][eop]" CONTROL SET TEXT hDlg, %IDC_RICHEDIT, RTF(rt) FONT NEW "Open Sans", 10, 0, %ANSI_CHARSET TO hFont1 FONT NEW "Open Sans", 28, 1, %ANSI_CHARSET TO hFont2 FONT NEW "Open Sans", 10, 1, %ANSI_CHARSET TO hFont3 CONTROL SET FONT hDlg, -1, hFont1 CONTROL SET FONT hDlg, %IDC_CMD_ICON, hFont1 CONTROL SET FONT hDlg, %IDC_CMD_LABEL, hFont2 CONTROL SET FONT hDlg, %IDC_COMBOBOX, hFont1 CONTROL SET FONT hDlg, %IDC_LABEL1, hFont3 CONTROL SET FONT hDlg, %IDC_PARAM1_TXTBOX, hFont1 CONTROL SET FONT hDlg, %IDC_PARAM1_LABEL, hFont3 CONTROL SET FONT hDlg, %IDC_PARAM1_DESC, hFont1 CONTROL SET FONT hDlg, %IDC_PARAM2_TXTBOX, hFont1 CONTROL SET FONT hDlg, %IDC_PARAM2_LABEL, hFont3 CONTROL SET FONT hDlg, %IDC_PARAM2_DESC, hFont1 CONTROL SET FONT hDlg, %IDC_PARAM1_MORE, hFont1 CONTROL SET FONT hDlg, %IDC_PARAM2_MORE, hFont1 CONTROL SET FONT hDlg, %IDC_ADD_IMGBUTTON, hFont1 CONTROL SET FONT hDlg, %IDC_LINE1, hFont1 CONTROL SET FONT hDlg, %IDC_LINE2, hFont1 DIALOG SET ICON hDlg, "AICO" DIALOG SHOW MODAL hDlg, CALL ProcMainDlg TO lRslt FONT END hFont1 FONT END hFont2 FONT END hFont3 FUNCTION = lRslt END FUNCTION '------------------------------------------------------------------------------